Skip to main content

Speech Subtitle Generation on Nvidia Jetson

Introduction

Nowadays, we have many meetings every day, but some of the meeting content is not intended to be published. Sending meeting content to the cloud for recording and returning subtitles can pose a significant threat to meeting privacy. And the most important thing is you will lose your meeting content if the internet is delayed.

And here we introduce you Speech Subtitle Generation on Jetson, which can offer real-time speech-to-subtitle services while avoiding information leakage on the internet. Meeting content can be transcribed and displayed on screens using an AI model in subtitle form, which can protect meeting privacy and reduce meeting recorder workload.

Hardware Setup

left

  • reSpeaker (Or other USB interface microphones)

auto

  • hardware connection

    pir

Prepare the runtime environment

Step1. Install Riva ASR Server:

Please refer to this wiki for installing Riva ASR Server.

In your terminal(Ctrl+Alt+T), input sudo docker ps and you will see something like following, that means you have finished the first step.

pir

Step2. Install flask:

Open the terminal (Ctrl+Alt+T) and using the following command to install flask:

pip3 install flask
python3 -c 'import flask; print(flask.__version__)

If you get something like following that means you have finished this step.

pir

Step3. upgrade pip setuptools wheel:

# riva client
git clone --depth=1 --recursive https://github.com/nvidia-riva/python-clients
cd python-clients
sudo pip3 install --upgrade pip setuptools wheel
pip3 install --no-cache-dir --verbose -r requirements.txt
python3 setup.py --verbose bdist_wheel
pip3 install --no-cache-dir --verbose dist/nvidia_riva_client*.whl
python3 -c 'import riva.client; print(riva.client.__version__)'

In your terminal(Ctrl+Alt+T), input pip --version you will see somthing like following, it means you finished upgrade pip.

pir

In your terminal(Ctrl+Alt+T), input python3 -c 'import setuptools; print(setuptools.__version__) if you get something like following that means you have upgrade setuptools.

pir

In your terminal(Ctrl+Alt+T), input wheel version you will see somthing like following, it means you finished upgrade wheel.

pir

Step4. install pyaudio:

# pyaudio
sudo apt-get install -y --no-install-recommends python3-pyaudio
python3 -c 'import pyaudio; print(pyaudio.__version__)'

If your terminal get something like following, you finished the last step,congratulations!

pir

Let's run it

git clone https://github.com/Seeed-Projects/Real-time-Subtitle-Recorder-on-Jetson.git
cd Real-time-Subtitle-Recorder-on-Jetson
python3 recorder.py

Project Outlook

In this project, we use the Riva ASR Serverto capture data from the microphone input in real-time and display it on a webpage. In the future we will add more applications like translating one language into another, having faster response speed.

Loading Comments...